import http from '@src/util/http';

/**
 * 设置用户向导
 * @param {Object} params - 参数
 * @param {String} params.profession - 行业信息: 制造业、互联网/IT、服务业、建筑家居、贸易零售、其他
 * @param {Array} params.role - 权限分配列表
 * role = [
 *  { id: '', userId: [ userId ] }
 * ]
 * @param {String} params.phone - 手机号
 * @param {String} params.code - 验证码
 * @returns 
 * {
 *  status: ,
 *   data: {String},  专属客服 qrcode 名称
 * }
 */
export function saveGuideSetting(params) {
  return http.post('/freeGuideCode/saveGuideSetting', params);
}

/**
 * 用户向导 超级管理员 发送短信 验证码
 * @param {String} phone - 手机号
 * @returns Promise<>
 */
export function freeGuideCode(phone) {
  return http.post('/freeGuideCode/code', phone, false);
}
/**
 * 新手引导 -开启
 * @param {String} params 
 * @returns Promise<>
 */

export function newGuideOpen(params){
  return http.get('/security/user/showGuide', params)
}

/**
 * 新手引导 -关闭
 * @param {Object} params 
 * @returns Promise<>
 */

export function closeGuide(params){
  return http.get('/security/user/closeGuide', params)
}



/**
 * @des 获取当前用户关于引导通知的缓存
 * @param {String} type 引导类型
 */
 export function getUserGuideStorage(){
  return http.get('/userGuide/queryUserGuideList')
}



/**
 * @des 获取当前用户某个引导通知的缓存
 * @param {String} type 引导类型
 */
 export function getUserGuideStorageFor(params){
  return http.get('/userGuide/queryUserGuide', params)
}

/**
 * @des 修改当前用户关于引导通知的缓存
 * @param {String} type 引导类型
 * @param {Number} step 当前步骤数量
 * @param {Number} isComplete 引导是否完成 0 完成 1未完成 -1引导已失效
 * @param {String} desc 引导描述
 */
 export function setUserGuideStorage(params){
  return http.post('/userGuide/completeUserGuide', params)
}

/**
 * @des 新增当前用户关于引导通知的缓存
 * @param {Array} userGuideList 引导参数对象
 * @param {String} userGuideList.type 引导类型
 * @param {Number} userGuideList.step 当前步骤数量
 * @param {Number} userGuideList.isComplete 引导是否完成
 * @param {String} userGuideList.desc 引导描述
 */
 export function creatUserGuideStorage(params){
  return http.post('/userGuide/sync', params)
}


/**
 * @des 获取高级搜索选择列导出等地方的前端缓存
 * @param {String} type 唯一标识
 */
export function getServerCachApi(type){
  return http.get(`/userGuide/queryUserGuideList?type=${type}`)
}

/**
 * @des 高级搜索选择列导出等地方的前端缓存
 * @param {String} type 唯一标识
 * @param {Number} step 写死的 1
 * @param {String} isComplete 写死的 1
 * @param {String} userConfig 缓存内容, JSON字符串
 */
export function creatServerCachApi(params){
  return http.post('/userGuide/addOrUpdate', params)
}


